#include <iostream>
#include <Windows.h>
#include "game_common.h"
#include "chapter01.h"
#include "chapter02.h"
#include "Player.h"
#include "Map.h"
#include "text_utils.h"

int main() {
    SetConsoleOutputCP(CP_UTF8);
    srand(time(0));
    // 初始化玩家和地图
    Player player;
    player.distribute();
    // 给玩家添加初始技能
    player.setSkills("火球术", "释放火焰攻击敌人", 30, 15, true,
        StatusEffect::NONE, 0, 0);
    player.setSkills("神谴", "这是一串作弊代码", 2000, 0, true,
        StatusEffect::NONE, 0, 0);
    player.EarnMoney(500); // 初始金钱

    Map gameMap;
    // 运行第一章主逻辑
    runChapter01(player, gameMap);

    // 撤离成功后进入第二章
    // 初始化第二章
    initChapter02();
    text2_01();

    // 运行第二章主逻辑
    runChapter02(player, gameMap);
    
    // 游戏结束处理
    std::cout << "恭喜完成第二章！游戏结束。" << std::endl;
    std::cout << std::endl << std::endl;
    std::cout << "游戏结束..." << std::endl;


    return 0;
}
